{"version":3,"file":"./modules/[request].xxxxxxxx.js","mappings":"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","sources":["webpack:///./URLChecker.ts","webpack:///./YouTubeManager.ts","webpack:///./modules/Expandable.ts","webpack:///./modules/FilterNavigation.ts","webpack:///./modules/LayerAdvance.ts","webpack:///../../../node_modules/rxjs/_esm5/internal/operators/takeWhile.js","webpack:///./modules/LayerPage.ts"],"sourcesContent":["/// \r\n\r\nimport { addClasses } from './helpers/DOMHelpers';\r\nimport { getURLParamsArray } from './helpers/helperFunctions';\r\nimport { setCookie } from './helpers/helperFunctions';\r\n \r\ninterface URLCheckerHandler {\r\n [index: string]: (value: string) => any;\r\n}\r\n\r\nconst opaqueSpinnerClasses = ['nx-u-spinner', 'nx-u-spinner--medium', 'nx-u-spinner--opaque'];\r\n\r\nexport default class URLChecker {\r\n constructor(handlers: URLCheckerHandler = {}) {\r\n this.addHandlers(handlers)\r\n .init();\r\n }\r\n\r\n private addHandlers(handlers: URLCheckerHandler): URLChecker {\r\n Object.entries(handlers).forEach(([name, handler]) => this[name] = handler);\r\n return this;\r\n }\r\n\r\n private init(): URLChecker {\r\n const urlSearchParams = new URLSearchParams(window.location.search);\r\n this.hidePageOnFastForward(urlSearchParams);\r\n this.createSourceCookieIfNeeded(urlSearchParams);\r\n \r\n const params = this.getURLParams();\r\n \r\n Object.entries(params).forEach(([handlerName, arg]) => {\r\n this[handlerName](arg);\r\n });\r\n\r\n if (location.hash.match(/layer/g)) {\r\n NiveaX.layer.serviceLayer();\r\n } else {\r\n sessionStorage.removeItem('layers');\r\n }\r\n\r\n return this;\r\n }\r\n\r\n private createSourceCookieIfNeeded(urlSearchParams: URLSearchParams) {\r\n const src = urlSearchParams.get('src');\r\n\r\n if (src) {\r\n setCookie(\"Source\", src, 0);\r\n return;\r\n }\r\n \r\n const utmParams = { \r\n utm_source: urlSearchParams.get('utm_source'), \r\n utm_medium: urlSearchParams.get('utm_medium'), \r\n utm_campaign: urlSearchParams.get('utm_campaign'), \r\n utm_content: urlSearchParams.get('utm_content'), \r\n utm_term: urlSearchParams.get('utm_term') \r\n }\r\n \r\n\r\n Object.keys(utmParams).forEach(key => {\r\n if (utmParams[key] === '' || utmParams[key] === null) {\r\n delete utmParams[key];\r\n }\r\n });\r\n\r\n const queryString = new URLSearchParams(utmParams).toString();\r\n \r\n if (queryString) {\r\n setCookie(\"Source\", queryString, 0);\r\n }\r\n }\r\n\r\n private hidePageOnFastForward(urlSearchParams: URLSearchParams) {\r\n if (urlSearchParams.get('fast-forward')) {\r\n addClasses(document.body, ...opaqueSpinnerClasses);\r\n }\r\n }\r\n\r\n private getURLParams(): URLParams {\r\n const queries = getURLParamsArray(),\r\n params = {};\r\n\r\n queries.forEach((indexQuery: string) => {\r\n const indexPair = indexQuery.split('='),\r\n queryKey = decodeURIComponent(indexPair[0]);\r\n\r\n if (typeof this[queryKey] === 'function') {\r\n params[queryKey] = decodeURIComponent(indexPair.length > 1 ? indexPair[1] : \"\");\r\n }\r\n });\r\n\r\n return params;\r\n }\r\n\r\n layer(mode) {\r\n window.NiveaX.layer.openAsync(mode);\r\n }\r\n\r\n showgrid(mode): void {\r\n new GridBuilder(mode);\r\n }\r\n\r\n nojs(): void {\r\n new JSLoader();\r\n }\r\n}\r\n\r\nclass GridBuilder {\r\n private mode: Number;\r\n\r\n constructor(mode: string) {\r\n this.mode = parseInt(mode);\r\n this.buildGrid();\r\n }\r\n\r\n private buildGrid() {\r\n document.body.classList.add('nx-u-debug-show-grid');\r\n\r\n const debug = this.getDebug(),\r\n container = this.getContainer(),\r\n grid = this.getGrid();\r\n\r\n for (let i = 0; i < 12; i++) {\r\n const col = this.getColumn();\r\n grid.appendChild(col);\r\n }\r\n\r\n debug.appendChild(container);\r\n container.appendChild(grid);\r\n\r\n document.body.appendChild(debug);\r\n }\r\n\r\n private getDebug() {\r\n const debug = document.createElement('div');\r\n debug.classList.add('nx-u-debug-grid');\r\n debug.style.zIndex = '888888';\r\n\r\n return debug;\r\n }\r\n\r\n private getContainer() {\r\n const container = document.createElement('div');\r\n container.classList.add(this.mode === 2 ? 'nx-u-container-fluid' : 'nx-u-container');\r\n return container;\r\n }\r\n\r\n private getGrid() {\r\n const grid = document.createElement('div');\r\n grid.classList.add('nx-u-row');\r\n\r\n return grid;\r\n }\r\n\r\n private getColumn() {\r\n const col = document.createElement('div');\r\n col.classList.add('nx-u-col-1');\r\n return col;\r\n }\r\n}\r\n\r\nclass JSLoader {\r\n private content: string;\r\n\r\n constructor() {\r\n this.saveHTMLInnerTo()\r\n .runAfterAppInitialized(this.onModulesLoaded);\r\n }\r\n\r\n private writeToHTMLNode(content: string): void {\r\n document.documentElement.innerHTML = content;\r\n }\r\n\r\n private saveHTMLInnerTo(): JSLoader {\r\n this.content = document.documentElement.innerHTML;\r\n return this;\r\n }\r\n\r\n private onModulesLoaded = () => {\r\n this.writeToHTMLNode(this.content);\r\n document.removeEventListener('niveax:modulesloaded', this.onModulesLoaded)\r\n }\r\n\r\n private runAfterAppInitialized(func: Callback): JSLoader {\r\n document.addEventListener('niveax:modulesloaded', func);\r\n return this;\r\n }\r\n}","/// \r\n\r\nexport default class YouTubeManager {\r\n\r\n ytModules: any;\r\n playerId: number;\r\n iFrameApiLoaded: boolean;\r\n\r\n constructor() {\r\n this.ytModules = [];\r\n this.playerId = 0;\r\n this.init();\r\n }\r\n\r\n init() {\r\n document.addEventListener('nxOnYouTubeIframeAPIReady', this.onIFrameApiLoaded.bind(this), false);\r\n }\r\n\r\n onIFrameApiLoaded() {\r\n document.removeEventListener('nxOnYouTubeIframeAPIReady', this.onIFrameApiLoaded);\r\n this.removeBlocker();\r\n this.iFrameApiLoaded = true;\r\n }\r\n\r\n registerIFrameVideo(ytModule) {\r\n if (ytModule.playerId === undefined) {\r\n ytModule.playerId = this.getNewPlayerId();\r\n this.ytModules.push(ytModule);\r\n }\r\n if(this.iFrameApiLoaded) {\r\n ytModule.removeBlocker();\r\n }\r\n }\r\n\r\n removeBlocker() {\r\n for (let i = 0; i < this.ytModules.length; i++) {\r\n if (this.ytModules[i].player === undefined) {\r\n this.ytModules[i].removeBlocker();\r\n }\r\n }\r\n }\r\n\r\n getNewPlayerId() {\r\n return this.playerId += 1;\r\n }\r\n\r\n pauseAllVideos() {\r\n this.ytModules.forEach((module) => {\r\n if (module.player !== undefined && module.player.pauseVideo !== undefined) {\r\n module.player.pauseVideo();\r\n }\r\n });\r\n }\r\n\r\n pauseYouTubeVideoById(youTubeVideoId: string) {\r\n this.ytModules.map(ytModule => {\r\n if (ytModule.youTubeId == youTubeVideoId && moduleCanBePaused()) {\r\n ytModule.player.pauseVideo();\r\n }\r\n\r\n function moduleCanBePaused() {\r\n return ytModule.player !== undefined\r\n && ytModule.player.getPlayerState() == 1\r\n && ytModule.player.pauseVideo !== undefined;\r\n }\r\n });\r\n }\r\n}\r\n","import { getOptions, requestAnimationFrameTimer } from '../helpers/helperFunctions';\r\n\r\nexport default class Expandable {\r\n private height: number;\r\n private active: boolean;\r\n\r\n constructor(private container: HTMLElement, private options: ExpandableOptions = {}) {\r\n this.active = this.container.className.includes('active');\r\n this.options = getOptions(this.container, Object.assign(this.getDefaultOptions(), this.options));\r\n this.init();\r\n }\r\n\r\n private init(): Expandable {\r\n this.setElementHeight(this.container, this.getSuitableHeight());\r\n this.setOnResizeHandler();\r\n return this;\r\n }\r\n\r\n private saveInitialHeight(): Expandable {\r\n this.height = this.getElementHeight(this.container);\r\n return this;\r\n }\r\n\r\n private getElementHeight(element: HTMLElement): number {\r\n return element.offsetHeight;\r\n }\r\n\r\n private getSuitableHeight(): string {\r\n return this.active ? '' : this.options.collapsedHeight + 'px';\r\n }\r\n\r\n private setElementHeight(element: HTMLElement, height?: string): Expandable {\r\n element.style.maxHeight = height != null ? height : ''; \r\n\r\n return this;\r\n }\r\n\r\n private toggleState(): Expandable {\r\n this.active = !this.active;\r\n return this;\r\n }\r\n\r\n private getDefaultOptions(): ExpandableOptions {\r\n return {\r\n collapsedHeight: 115\r\n };\r\n }\r\n\r\n private setOnResizeHandler(): Expandable {\r\n NiveaX.addToEventStore('resize', () => requestAnimationFrameTimer(() => this.onResize(), 300), window)\r\n\r\n return this;\r\n }\r\n\r\n private onResize() {\r\n const height = this.getSuitableHeight();\r\n this.setElementHeight(this.container, height);\r\n }\r\n\r\n setCollapsedHeight(value: number): Expandable {\r\n this.options.collapsedHeight = value;\r\n return this;\r\n }\r\n\r\n toggle(): Expandable {\r\n this.toggleState()\r\n .setElementHeight(this.container, this.getSuitableHeight());\r\n return this;\r\n }\r\n\r\n isActive(): boolean {\r\n return this.active;\r\n }\r\n \r\n needToBeShown(): boolean {\r\n return this.height > this.options.collapsedHeight * 1.25;\r\n }\r\n\r\n\r\n clear(): Expandable {\r\n this.setElementHeight(this.container)\r\n .saveInitialHeight();\r\n return this;\r\n }\r\n\r\n render(): Expandable {\r\n const height = this.getSuitableHeight();\r\n this.setElementHeight(this.container, height);\r\n\r\n return this;\r\n }\r\n\r\n getContainer(): HTMLElement {\r\n return this.container;\r\n }\r\n}","import Expandable from './Expandable';\r\nimport { debounce, getOptions, horizontalScrolling, loadParamsFromURL, toggleSelection } from '../helpers/helperFunctions';\r\nimport { createElementFromString, removeClass } from '../helpers/DOMHelpers';\r\n\r\nconst moduleSelector = '[data-module=\"FilterNavigation\"]';\r\n\r\nexport default class FilterNavigation {\r\n private primeLevel: HTMLElement;\r\n private layerItems: HTMLElement[];\r\n private layerLists: HTMLElement[];\r\n private layersStructure: FilterNavLayersStructure;\r\n private _lastActiveItem: HTMLElement;\r\n\r\n static setup(selector: string = moduleSelector): void {\r\n Array.from(document.querySelectorAll(selector)).filter((node: HTMLElement) => !node.dataset.moduleInitialized).forEach((element: HTMLElement) => {\r\n new FilterNavigation(element);\r\n element.dataset.moduleInitialized = 'true';\r\n });\r\n }\r\n\r\n constructor(public element: HTMLElement, private options: FilterNavigationOptions = {}) {\r\n this.options = getOptions(this.element, Object.assign(this.getDefaultOptions(), this.options));\r\n this.primeLevel = this.element.querySelector(this.options.primeLayerSelector);\r\n this.layerItems = this.getLayerItems(this.element, this.options.layerItemSelector);\r\n this.layerLists = Array.from(this.element.querySelectorAll(this.options.layerListSelector));\r\n this.layersStructure = this.getLayersStructure(this.layerItems);\r\n this.options.state = loadParamsFromURL();\r\n\r\n this.init();\r\n }\r\n\r\n private init(): FilterNavigation {\r\n this.initHorizontalScrolling(this.layerLists)\r\n .initExpanderFirtAndLast()\r\n .addHandlerOnLayerItemsClick()\r\n .recoverFilterNav()\r\n .togglePrimeLayer();\r\n\r\n if (this.element.querySelector('.nx-filter-navigation--display-all')) this.initHeightObserver();\r\n\r\n return this;\r\n }\r\n\r\n private initHeightObserver() {\r\n const setHeight = debounce(() => {\r\n const activeChild = this.element.querySelector('.nx-filter-navigation__level--active') as HTMLElement;\r\n if (activeChild) {\r\n requestAnimationFrame(() => {\r\n this.element.style.height = `${activeChild.offsetHeight}px`;\r\n });\r\n }\r\n }, 50);\r\n\r\n const mutationObserver = new MutationObserver((mutations) => {\r\n mutations.forEach((mutation) => {\r\n if (mutation.type === 'attributes' && mutation.attributeName === 'class') {\r\n setHeight();\r\n }\r\n });\r\n });\r\n\r\n const resizeObserver = new ResizeObserver(() => {\r\n setHeight();\r\n });\r\n\r\n Array.from(this.element.children).forEach((child) => {\r\n mutationObserver.observe(child, { attributes: true });\r\n resizeObserver.observe(child);\r\n });\r\n\r\n resizeObserver.observe(this.element);\r\n setHeight();\r\n\r\n return this;\r\n }\r\n\r\n private togglePrimeLayer() {\r\n const keysFromDom = Array.from(this.element.querySelectorAll(this.options.layerSelector)).map((list) => list.getAttribute('data-key')).filter(key => key != null),\r\n filterTagsActive = keysFromDom.some(key => this.options.state.hasOwnProperty(key));\r\n\r\n if (!filterTagsActive) {\r\n this.toggleLayer(this.primeLevel.id)\r\n }\r\n\r\n return this;\r\n }\r\n\r\n private initExpanderFirtAndLast(): FilterNavigation {\r\n this.layersStructure[this.primeLevel.id] = new Expandable(this.primeLevel, { collapsedHeight: this.primeLevel.offsetHeight })\r\n\r\n return this\r\n }\r\n\r\n private initHorizontalScrolling(layerLists: HTMLElement[]): FilterNavigation {\r\n layerLists.forEach(list => horizontalScrolling(list));\r\n return this;\r\n }\r\n\r\n private getChildLayerID(layer: HTMLElement): string {\r\n return layer.dataset.id;\r\n }\r\n\r\n private getCurrentLayerID(item: HTMLElement): string {\r\n return this.getCurrentLayer(item).id;\r\n }\r\n\r\n private getCurrentLayer(item: HTMLElement): HTMLElement {\r\n return item.closest(this.options.layerSelector);\r\n }\r\n\r\n private getParentLayerID(item: HTMLElement): string {\r\n return this.getCurrentLayer(item).dataset.parentId;\r\n }\r\n\r\n private getParentLayer(item: HTMLElement): HTMLElement {\r\n return document.getElementById(this.getParentLayerID(item));\r\n }\r\n\r\n private getLayerItems(element, itemSelector): HTMLElement[] {\r\n return Array.from(element.querySelectorAll(itemSelector));\r\n }\r\n\r\n private getLayersStructure(layerItems: HTMLElement[]): FilterNavLayersStructure {\r\n return layerItems.reduce((structure, itm) => {\r\n const id = this.getChildLayerID(itm),\r\n element = document.getElementById(id);\r\n\r\n if (!structure[id] && element) { // && element !== this.primeLevel\r\n structure[id] = new Expandable(element, { collapsedHeight: 0 })\r\n }\r\n\r\n return structure;\r\n }, {})\r\n }\r\n\r\n private addHandlerOnLayerItemsClick(): FilterNavigation {\r\n Array.from(this.element.querySelectorAll('.nx-filter-navigation__item--all'))\r\n .forEach((btn: HTMLElement) => btn.addEventListener('click', () => this.goToPreviousLevel()));\r\n\r\n this.layerItems.forEach(l => l.addEventListener('click', this.onLayerItemClick.bind(this)));\r\n return this;\r\n }\r\n\r\n private onLayerItemClick(event: Event): void {\r\n const target = this._lastActiveItem = event.currentTarget,\r\n childLayerID = this.getChildLayerID(target);\r\n\r\n const activeSiblings = Array.from(target.parentElement.querySelectorAll(`${this.options.layerItemSelector}.${this.options.activeClass}`)).filter(element => element !== target),\r\n countValue = target.querySelector('.nx-filter-navigation__count')?.textContent,\r\n icon = target.querySelector('svg, img')?.cloneNode(true) as HTMLElement,\r\n backBtn = this._lastActiveItem.parentElement?.querySelector(`${this.options.backBtn}`) as HTMLElement;\r\n \r\n this.removePrevActiveSibls(activeSiblings)\r\n target.classList.toggle(this.options.activeClass);\r\n const isActiveFilter = target.classList.contains(this.options.activeClass);\r\n\r\n if(childLayerID ) {\r\n this.runUpdateCB();\r\n this.toggleLayer(this.getCurrentLayerID(target));\r\n this.toggleLayer(childLayerID, true);\r\n this.showBackButton(childLayerID, target.dataset.key, target.textContent, countValue, icon);\r\n\r\n } else {\r\n this.options.updateCB1();\r\n\r\n if(isActiveFilter) {\r\n this.disableBackBtn(backBtn);\r\n } else {\r\n this.enableBackBtn(backBtn);\r\n\r\n const parentLayer = this.getParentLayer(this._lastActiveItem);\r\n const previousActiveItem = parentLayer ? this.getActiveItem(parentLayer) : null; \r\n this._lastActiveItem = previousActiveItem;\r\n } \r\n }\r\n }\r\n\r\n private disableBackBtn(backBtn: HTMLElement) {\r\n backBtn.classList.add(\"nx-back-btn--disabled\")\r\n }\r\n\r\n private enableBackBtn(backBtn:HTMLElement){\r\n backBtn.classList.remove(\"nx-back-btn--disabled\") \r\n }\r\n\r\n private removePrevActiveSibls(activeSiblings): void {\r\n activeSiblings.forEach(activeItem => removeClass(activeItem, this.options.activeClass))\r\n }\r\n\r\n private showBackButton(layerId: string, key?: string, txt?: string, count?: string, icon?: HTMLElement) {\r\n const backBtn = document.getElementById(`${layerId}`)?.querySelector('.nx-filter-navigation__item--all');\r\n const backBtnTxt = backBtn?.querySelector('.nx-filter-navigation__text');\r\n const backBtnArr = backBtn?.querySelector('.nx-filter-navigation__back-btn');\r\n const backBtnCount = backBtn?.querySelector('.nx-filter-navigation__count')\r\n\r\n backBtn.setAttribute(\"data-key\", key)\r\n \r\n backBtnTxt && txt ? backBtnTxt.textContent = txt : \"\";\r\n backBtnCount && count ? backBtnCount.textContent = count : \"\"; \r\n backBtnTxt && backBtnCount ? backBtnTxt.appendChild(backBtnCount) : \"\";\r\n \r\n const backBtnContent = backBtn?.querySelector('.nx-filter-navigation__item-content');\r\n backBtnContent?.querySelector('svg, img')?.remove();\r\n icon && backBtnContent ? backBtnContent.prepend(icon) : \"\";\r\n\r\n !backBtnArr && backBtn?.prepend(this.getBackBtnArrow());\r\n }\r\n\r\n private recoverFilterNav(): FilterNavigation {\r\n const mainNavList = Array.from(this.element.querySelectorAll(this.options.layerSelector));\r\n let activeIsSet = false\r\n const activeFilterTags = []\r\n\r\n for (let i = mainNavList.length - 1; i >=0; i--) {\r\n let dataKey = mainNavList[i].getAttribute('data-key');\r\n let target = mainNavList[i].querySelector(`${this.options.layerItemSelector}[data-key=\"${this.options.state[dataKey]}\"]`) as HTMLElement\r\n\r\n if (this.options.state.hasOwnProperty(dataKey)) {\r\n target.classList.add(this.options.activeClass);\r\n activeFilterTags.push(target)\r\n }\r\n }\r\n\r\n for (let i = mainNavList.length - 1; i >=0; i--) {\r\n let dataKey = mainNavList[i].getAttribute('data-key');\r\n let target = mainNavList[i].querySelector(`${this.options.layerItemSelector}[data-key=\"${this.options.state[dataKey]}\"]`) as HTMLElement\r\n\r\n if (this.options.state.hasOwnProperty(dataKey)) {\r\n const currentLayerID = this.getCurrentLayerID(target)\r\n const childLayerID = this.getChildLayerID(target);\r\n const countValue = target.querySelector('.nx-filter-navigation__count')?.textContent;\r\n const icon = target.querySelector('svg, img')?.cloneNode(true) as HTMLElement;\r\n\r\n if (!activeIsSet) {\r\n if(childLayerID) {\r\n this.toggleLayer(childLayerID, true);\r\n this.showBackButton(childLayerID, target.dataset.key, target.textContent, countValue, icon);\r\n\r\n } else {\r\n target.classList.remove(this.options.activeClass); // fix, not to show broken filter level\r\n const previousActiveItem = activeFilterTags.find(item => item.classList.contains(this.options.activeClass));\r\n\r\n this.toggleLayer(currentLayerID, true);\r\n previousActiveItem && this.showBackButton(currentLayerID, previousActiveItem.dataset.key, previousActiveItem.querySelector('.nx-filter-navigation__text').textContent, countValue, icon);\r\n }\r\n\r\n this._lastActiveItem = target;\r\n activeIsSet = !activeIsSet;\r\n }\r\n }\r\n }\r\n\r\n setTimeout(() => {\r\n activeFilterTags.filter(item => {\r\n item.classList.contains(this.options.activeClass) == false && item.click()\r\n })\r\n }, 500);\r\n\r\n return this;\r\n }\r\n\r\n private toggleLayer(id: string, active?): FilterNavigation {\r\n const layerExpandable = this.layersStructure[id],\r\n layerNode = layerExpandable && layerExpandable.getContainer();\r\n \r\n if (layerNode) { \r\n layerExpandable.toggle();\r\n layerNode.classList.toggle('nx-filter-navigation__level--active');\r\n } \r\n\r\n return this;\r\n }\r\n\r\n\r\n hasLayerVisibleItems(node: HTMLElement): boolean {\r\n return node && Array.from(node.querySelectorAll(this.options.layerItemSelector))?.some(itm => (itm).hidden === false);\r\n }\r\n\r\n private goToPreviousLevel(): FilterNavigation {\r\n if(!this._lastActiveItem) return;\r\n\r\n const parentLayer = this.getParentLayer(this._lastActiveItem),\r\n previousActiveItem = parentLayer ? this.getActiveItem(parentLayer) : null,\r\n childLayerID = this.getChildLayerID(this._lastActiveItem),\r\n isLastLevelItem = !childLayerID;\r\n\r\n const currentLayerID = this.getCurrentLayerID(this._lastActiveItem);\r\n const getParentAccFilterText = previousActiveItem?.querySelector('.nx-filter-navigation__text').textContent\r\n const icon = previousActiveItem?.querySelector('svg, img')?.cloneNode(true) as HTMLElement;\r\n\r\n this.deleteActFilterBubble()\r\n this.clearLayer(this.getCurrentLayer(this._lastActiveItem));\r\n this.enableBackBtn(this._lastActiveItem.parentElement?.querySelector(`${this.options.backBtn}`) as HTMLElement)\r\n\r\n if (!isLastLevelItem) {\r\n this.toggleLayer(currentLayerID);\r\n this.toggleLayer(childLayerID)\r\n this.primeLevel.id != currentLayerID ? this.showBackButton(currentLayerID, previousActiveItem?.dataset.key ,getParentAccFilterText, null, icon) : \"\";\r\n }\r\n \r\n this.runUpdateCB()\r\n \r\n this._lastActiveItem = previousActiveItem;\r\n\r\n return this;\r\n }\r\n\r\n private clearLayer(layer: HTMLElement): FilterNavigation {\r\n this.getActiveItem(layer)?.classList.remove(this.options.activeClass);\r\n\r\n return this;\r\n }\r\n \r\n private deleteActFilterBubble(): void {\r\n const activeFilterKey = this._lastActiveItem.dataset.key,\r\n activeFilterTag = document?.querySelector(`.nx-active-filters__item[data-input-name=\"${activeFilterKey}\"]`);\r\n \r\n activeFilterTag && toggleSelection(activeFilterTag.inputElement, false); \r\n }\r\n\r\n private getActiveItem(layer: HTMLElement): HTMLElement {\r\n return layer.querySelector(`${this.options.layerItemSelector}.${this.options.activeClass}`);\r\n }\r\n\r\n private runUpdateCB(): FilterNavigation {\r\n this.options.updateCB();\r\n return this;\r\n }\r\n\r\n\r\n private getBackBtnArrow(): HTMLElement {\r\n return createElementFromString(`\r\n \r\n \r\n \r\n \r\n \r\n `)\r\n }\r\n\r\n private getDefaultOptions(): FilterNavigationOptions {\r\n return {\r\n layerSelector: '.nx-filter-navigation__level',\r\n primeLayerSelector: '.nx-filter-navigation__level--prime',\r\n layerListSelector: '.nx-filter-navigation__list',\r\n layerItemSelector: '.nx-filter-navigation__item',\r\n scrollBarSelector: '.nx-filter-navigation__scrollbar',\r\n activeClass: 'nx-active',\r\n backBtn:'.nx-filter-navigation__item--all'\r\n };\r\n }\r\n}\r\n\r\n\r\n\r\n// Hot Module Replacement\r\nif (module.hot) {\r\n let nodesCache: HMRNodes[] = Array.from(document.querySelectorAll(moduleSelector)).map((element: Node) => ({ nodeToReplace: element, nodeOrigin: element.cloneNode(true) }));\r\n\r\n FilterNavigation.setup(moduleSelector);\r\n\r\n module.hot.accept(() => {\r\n FilterNavigation.setup(moduleSelector);\r\n });\r\n module.hot.dispose(() => {\r\n nodesCache.forEach(({ nodeToReplace, nodeOrigin }) => { nodeToReplace = nodeToReplace.parentElement.replaceChild(nodeOrigin.cloneNode(true), nodeToReplace) });\r\n });\r\n} else {\r\n FilterNavigation.setup(moduleSelector);\r\n}","import LayerBasic, { BasicLayerOptions } from './LayerBasic';\r\nimport { Optional } from '../typings/mapped-types';\r\nimport {\r\n getOptions,\r\n requestAnimationFrameTimer,\r\n requestNextAnimationFrame,\r\n IOSScroll,\r\n} from '../helpers/helperFunctions';\r\nimport {\r\n addClass,\r\n addClasses,\r\n removeClasses,\r\n} from '../helpers/DOMHelpers';\r\n\r\nconst spinnerClasses = ['nx-u-spinner', 'nx-u-spinner--medium'];\r\n\r\nexport interface LayerAdvanceOptions extends BasicLayerOptions {\r\n beforeOpen: AsyncCallback;\r\n afterOpen: AsyncCallback;\r\n beforeClose: AsyncCallback;\r\n afterClose: AsyncCallback;\r\n}\r\n\r\nexport default class LayerAdvance extends LayerBasic {\r\n protected options: LayerAdvanceOptions;\r\n\r\n constructor(element: HTMLElement, options: Optional = {}) {\r\n super(element, options);\r\n\r\n this.options = getOptions(this.element, this.options);\r\n\r\n this.init();\r\n }\r\n\r\n protected getDefaultOptions(): Optional {\r\n const defOptions = super.getDefaultOptions();\r\n\r\n return {\r\n ...defOptions,\r\n layerModifierClasses: `${defOptions.layerMainClass}--page`,\r\n layerCloseBtnModifierClass: `${defOptions.layerMainClass}__close-btn--page`,\r\n layerCloseIconClass: `${defOptions.layerCloseIconClass} nx-close-icon--thin`,\r\n beforeOpen: async () => { await window.NiveaX.initModules(); },\r\n afterOpen: async () => { },\r\n beforeClose: async () => { },\r\n afterClose: async () => { },\r\n };\r\n }\r\n\r\n protected get isOpen(): boolean {\r\n return document.body.contains(this.layer);\r\n }\r\n\r\n showSpinner(): LayerAdvance {\r\n addClasses(this.layer.querySelector('.nx-layer__wrapper'), ...spinnerClasses);\r\n\r\n if (!this.isOpen) IOSScroll.prevent(true);\r\n super.open();\r\n\r\n return this;\r\n }\r\n\r\n\r\n async open(callback: Callback = () => { }): Promise {\r\n const {\r\n layerMainClass,\r\n beforeOpen,\r\n afterOpen,\r\n } = this.options;\r\n\r\n await beforeOpen();\r\n\r\n this.backButton();\r\n\r\n if (!this.isOpen) IOSScroll.prevent(true);\r\n\r\n removeClasses(this.layer.querySelector('.nx-layer__wrapper'), ...spinnerClasses);\r\n\r\n super.open();\r\n\r\n requestNextAnimationFrame(() => this.layer.classList.add(`${layerMainClass}--open`));\r\n\r\n window.NiveaX.loadShopPrices();\r\n\r\n await afterOpen();\r\n\r\n callback();\r\n }\r\n\r\n async close(callback: Callback = () => { }): Promise {\r\n const {\r\n layerMainClass,\r\n beforeClose,\r\n afterClose,\r\n } = this.options;\r\n\r\n await beforeClose();\r\n\r\n sessionStorage.removeItem('layers');\r\n\r\n addClass(this.layer, `${layerMainClass}--closing`);\r\n\r\n requestAnimationFrameTimer(() => {\r\n removeClasses(this.layer, `${layerMainClass}--open`, `${layerMainClass}--closing`);\r\n super.close();\r\n }, 400);\r\n\r\n if (document.body.classList.contains('nx-u-lock-screen') || document.body.classList.contains('nx-u-prevent-scroll'))\r\n IOSScroll.allow();\r\n\r\n await afterClose();\r\n\r\n callback();\r\n }\r\n\r\n backButton(){\r\n let layersArray;\r\n let layers;\r\n let getLayers = sessionStorage.getItem('layers');\r\n\r\n if (getLayers) {\r\n layersArray = JSON.parse(getLayers);\r\n\r\n if (layersArray.includes(location.hash)) {\r\n let index = layersArray.findIndex(i => i == location.hash) + 1;\r\n layersArray = layersArray.slice(0, index);\r\n layers = [...layersArray]\r\n } else {\r\n layers = [...layersArray, location.hash]\r\n }\r\n } else {\r\n layers = [location.hash]\r\n }\r\n\r\n sessionStorage.setItem('layers', `${JSON.stringify(layers)}`);\r\n\r\n if (layers.length > 1) {\r\n this.layer.classList.add('nx-layer--show-back-tbn');\r\n } else {\r\n this.layer.classList.remove('nx-layer--show-back-tbn');\r\n }\r\n }\r\n}\r\n","/** PURE_IMPORTS_START tslib,_Subscriber PURE_IMPORTS_END */\nimport * as tslib_1 from \"tslib\";\nimport { Subscriber } from '../Subscriber';\nexport function takeWhile(predicate, inclusive) {\n if (inclusive === void 0) {\n inclusive = false;\n }\n return function (source) {\n return source.lift(new TakeWhileOperator(predicate, inclusive));\n };\n}\nvar TakeWhileOperator = /*@__PURE__*/ (function () {\n function TakeWhileOperator(predicate, inclusive) {\n this.predicate = predicate;\n this.inclusive = inclusive;\n }\n TakeWhileOperator.prototype.call = function (subscriber, source) {\n return source.subscribe(new TakeWhileSubscriber(subscriber, this.predicate, this.inclusive));\n };\n return TakeWhileOperator;\n}());\nvar TakeWhileSubscriber = /*@__PURE__*/ (function (_super) {\n tslib_1.__extends(TakeWhileSubscriber, _super);\n function TakeWhileSubscriber(destination, predicate, inclusive) {\n var _this = _super.call(this, destination) || this;\n _this.predicate = predicate;\n _this.inclusive = inclusive;\n _this.index = 0;\n return _this;\n }\n TakeWhileSubscriber.prototype._next = function (value) {\n var destination = this.destination;\n var result;\n try {\n result = this.predicate(value, this.index++);\n }\n catch (err) {\n destination.error(err);\n return;\n }\n this.nextOrComplete(value, result);\n };\n TakeWhileSubscriber.prototype.nextOrComplete = function (value, predicateResult) {\n var destination = this.destination;\n if (Boolean(predicateResult)) {\n destination.next(value);\n }\n else {\n if (this.inclusive) {\n destination.next(value);\n }\n destination.complete();\n }\n };\n return TakeWhileSubscriber;\n}(Subscriber));\n//# sourceMappingURL=takeWhile.js.map\n","import {\r\n fromEvent,\r\n of,\r\n combineLatest,\r\n} from 'rxjs';\r\nimport {\r\n takeUntil,\r\n takeWhile,\r\n switchMap,\r\n filter,\r\n map,\r\n tap,\r\n} from 'rxjs/operators';\r\n\r\nimport LayerAdvance, { LayerAdvanceOptions } from './LayerAdvance';\r\nimport { Optional } from '../typings/mapped-types';\r\nimport { requestAnimationFrameTimer } from '../helpers/helperFunctions';\r\nimport { hasClass, objectToStyleString } from '../helpers/DOMHelpers';\r\n\r\nconst moduleSelector = '[data-module=\"LayerPage\"]';\r\n\r\nexport default class LayerPage extends LayerAdvance {\r\n static setup(selector: string = moduleSelector): void {\r\n Array.from(document.querySelectorAll(selector)).filter((node: HTMLElement) => !node.dataset.moduleInitialized).forEach((element: HTMLElement) => {\r\n new LayerPage(element);\r\n element.dataset.moduleInitialized = 'true';\r\n });\r\n }\r\n\r\n constructor(element: HTMLElement, options: Optional = {}) {\r\n super(element, options);\r\n\r\n this.listenToEvents();\r\n }\r\n\r\n protected getDefaultOptions(): Optional {\r\n const defOptions = super.getDefaultOptions();\r\n\r\n return {\r\n ...defOptions,\r\n layerModifierClasses: `${defOptions.layerMainClass}--page`,\r\n layerCloseBtnModifierClass: `${defOptions.layerMainClass}__close-btn--page`,\r\n layerCloseIconClass: `${defOptions.layerCloseIconClass} nx-close-icon--thin`,\r\n beforeOpen: async () => { await NiveaX.initModules(); },\r\n afterOpen: async () => {\r\n },\r\n beforeClose: async () => { },\r\n afterClose: async () => { },\r\n };\r\n }\r\n\r\n private listenToEvents(): LayerPage {\r\n const touchStart$ = fromEvent(this.layerContent, 'touchstart', { passive: true }).pipe(filter((e: TouchEvent) => e.target === e.currentTarget)),\r\n touchEnd$ = fromEvent(document, 'touchend', { passive: true }).pipe(tap(() => requestAnimationFrame(() => this.wrapper.removeAttribute('style')))),\r\n touchMove$ = fromEvent(document, 'touchmove', { passive: true }).pipe(map((e: TouchEvent) => e.changedTouches[0].clientY)),\r\n { layerMainClass } = this.options;\r\n\r\n const layerMove$ = touchStart$.pipe(\r\n map((e: TouchEvent) => e.changedTouches[0].clientY),\r\n switchMap(startY => combineLatest(of(startY), touchMove$)\r\n .pipe(\r\n takeUntil(touchEnd$),\r\n takeWhile(() => !hasClass(this.layer, `${layerMainClass}--closing`))))\r\n );\r\n\r\n layerMove$.subscribe(([startY, moveY]) => {\r\n const offsetHeight = document.documentElement.offsetHeight,\r\n endPoint = offsetHeight * 0.3,\r\n translateY = moveY - startY,\r\n percentResult = translateY / endPoint;\r\n\r\n const styles = {\r\n transform: `translateY(${Math.max(translateY, 0)}px) scale(${Math.min(1 - (0.2 * percentResult), 1)})`,\r\n transition: 'none',\r\n overflow: 'hidden',\r\n opacity: Math.min(1 - (0.6 * percentResult), 1),\r\n }\r\n\r\n if (percentResult < 1) {\r\n this.wrapper.setAttribute('style', objectToStyleString(styles));\r\n } else {\r\n this.close();\r\n requestAnimationFrameTimer(() => {\r\n this.wrapper.removeAttribute('style');\r\n }, 300);\r\n }\r\n });\r\n\r\n return this;\r\n }\r\n\r\n getLayerNode(): HTMLElement {\r\n return this.layer;\r\n }\r\n}\r\n\r\n// Hot Module Replacement\r\nif (module.hot) {\r\n let nodesCache: HMRNodes[] = Array.from(document.querySelectorAll(moduleSelector)).map((element: Node) => ({ nodeToReplace: element, nodeOrigin: element.cloneNode(true) }));\r\n\r\n LayerPage.setup(moduleSelector);\r\n\r\n module.hot.accept(() => {\r\n LayerPage.setup(moduleSelector);\r\n });\r\n module.hot.dispose(() => {\r\n nodesCache.forEach(({ nodeToReplace, nodeOrigin }) => { nodeToReplace = nodeToReplace.parentElement.replaceChild(nodeOrigin.cloneNode(true), nodeToReplace) });\r\n });\r\n} else {\r\n LayerPage.setup(moduleSelector);\r\n}"],"names":["opaqueSpinnerClasses","URLChecker","constructor","handlers","this","addHandlers","init","Object","entries","forEach","name","handler","urlSearchParams","URLSearchParams","window","location","search","hidePageOnFastForward","createSourceCookieIfNeeded","params","getURLParams","handlerName","arg","hash","match","NiveaX","layer","serviceLayer","sessionStorage","removeItem","src","get","utmParams","utm_source","utm_medium","utm_campaign","utm_content","utm_term","keys","key","queryString","toString","document","body","queries","indexQuery","indexPair","split","queryKey","decodeURIComponent","length","mode","openAsync","showgrid","GridBuilder","nojs","JSLoader","parseInt","buildGrid","classList","add","debug","getDebug","container","getContainer","grid","getGrid","i","col","getColumn","appendChild","createElement","style","zIndex","onModulesLoaded","writeToHTMLNode","content","removeEventListener","saveHTMLInnerTo","runAfterAppInitialized","documentElement","innerHTML","func","addEventListener","YouTubeManager","ytModules","playerId","onIFrameApiLoaded","bind","removeBlocker","iFrameApiLoaded","registerIFrameVideo","ytModule","undefined","getNewPlayerId","push","player","pauseAllVideos","module","pauseVideo","pauseYouTubeVideoById","youTubeVideoId","map","youTubeId","getPlayerState","Expandable","options","active","className","includes","assign","getDefaultOptions","setElementHeight","getSuitableHeight","setOnResizeHandler","saveInitialHeight","height","getElementHeight","element","offsetHeight","collapsedHeight","maxHeight","toggleState","addToEventStore","onResize","setCollapsedHeight","value","toggle","isActive","needToBeShown","clear","render","moduleSelector","FilterNavigation","setup","selector","Array","from","querySelectorAll","filter","node","dataset","moduleInitialized","primeLevel","querySelector","primeLayerSelector","layerItems","getLayerItems","layerItemSelector","layerLists","layerListSelector","layersStructure","getLayersStructure","state","initHorizontalScrolling","initExpanderFirtAndLast","addHandlerOnLayerItemsClick","recoverFilterNav","togglePrimeLayer","initHeightObserver","setHeight","activeChild","requestAnimationFrame","mutationObserver","MutationObserver","mutations","mutation","type","attributeName","resizeObserver","ResizeObserver","children","child","observe","attributes","layerSelector","list","getAttribute","some","hasOwnProperty","toggleLayer","id","getChildLayerID","getCurrentLayerID","item","getCurrentLayer","closest","getParentLayerID","parentId","getParentLayer","getElementById","itemSelector","reduce","structure","itm","btn","goToPreviousLevel","l","onLayerItemClick","event","target","_lastActiveItem","currentTarget","childLayerID","activeSiblings","parentElement","activeClass","countValue","textContent","icon","cloneNode","backBtn","removePrevActiveSibls","isActiveFilter","contains","runUpdateCB","showBackButton","updateCB1","disableBackBtn","enableBackBtn","parentLayer","previousActiveItem","getActiveItem","remove","activeItem","layerId","txt","count","backBtnTxt","backBtnArr","backBtnCount","setAttribute","backBtnContent","prepend","getBackBtnArrow","mainNavList","activeIsSet","activeFilterTags","dataKey","currentLayerID","find","setTimeout","click","layerExpandable","layerNode","hasLayerVisibleItems","hidden","isLastLevelItem","getParentAccFilterText","deleteActFilterBubble","clearLayer","activeFilterKey","activeFilterTag","inputElement","updateCB","scrollBarSelector","spinnerClasses","LayerAdvance","super","defOptions","layerModifierClasses","layerMainClass","layerCloseBtnModifierClass","layerCloseIconClass","beforeOpen","async","initModules","afterOpen","beforeClose","afterClose","isOpen","showSpinner","open","callback","backButton","loadShopPrices","close","layersArray","layers","getLayers","getItem","JSON","parse","index","findIndex","slice","setItem","stringify","TakeWhileOperator","predicate","inclusive","prototype","call","subscriber","source","subscribe","TakeWhileSubscriber","_super","destination","_this","_next","result","err","error","nextOrComplete","predicateResult","Boolean","next","complete","Subscriber","LayerPage","listenToEvents","touchStart$","fromEvent","layerContent","passive","pipe","e","touchEnd$","tap","wrapper","removeAttribute","touchMove$","changedTouches","clientY","switchMap","startY","combineLatest","of","takeUntil","lift","moveY","translateY","percentResult","styles","transform","Math","max","min","transition","overflow","opacity","getLayerNode"],"sourceRoot":""}